<template>
	<view class="goods-list">
		<goods-list @goodsItemClick="goGoodsDetail" :goods="goods"></goods-list>
		<view class="isOver" v-if="flag">-----我是有底线的-----</view>
	</view>
</template>

<script>
	import goodsList from '../../components/goods-list/goods-list.vue'
	export default {
		data() {
			return {
				pageindex:1,
				goods:[],
				flag:false
			}
		},
		components:{"goods-list":goodsList},
		onLoad() {
			this.getGoodsList()
		},
		//监听触底函数
		onReachBottom() {
			if(this.goods.length<this.pageindex*10) return this.flag = true
			this.pageindex++
			this.getGoodsList()
		},
		//监听下拉刷新
		onPullDownRefresh() {
			this.pageindex = 1
			this.goods = []
			this.flag = false
			setTimeout(()=>{
				//()=>{}回调函数
				this.getGoodsList(()=>{
					uni.stopPullDownRefresh()
				})
			},1000)
		},
		methods: {
			//获取商品列表的数据
			async getGoodsList(callBack){
				const res = await this.$myRequest({
					url:'/api/getgoods?pageindex='+this.pageindex
				})
				//老的数据this.goods，res.data.message请求出来的下一页数据
				this.goods = [...this.goods,...res.data.message]
				callBack && callBack()
			},
			//跳转到商品商品详情页
			goGoodsDetail(id){
				uni.navigateTo({
					url:'/pages/goods-detail/goods-detail?id='+id
				})
			}
		}
	}
</script>

<style lang="scss">
.goods-list{
	background: #eee;
}
.isOver{
	width: 100%;
	height: 50px;
	line-height: 50px;
	text-align: center;
	font-size: 28rpx;
}
</style>
